In recent years, as techniques to code video data acquired by a camera or the like, various techniques, such as DVC, MEPG2, and MPEG4, have been widely used in accordance with the uses of users.
Moreover, in addition to conventional analog broadcasting, digital terrestrial broadcasting which broadcasts digital images has been started recently. In order to record the digital images with a higher image quality, a technique with better coding efficiency has been demanded. In order to address these techniques, the H.264 specification, which is one of standards of a compression coding scheme in video data, is already standardized. Although H.264 requires a larger amount of computation for coding and decoding than MPEG2 or MPEG4 does, higher coding efficiency can be obtained with H.264.
Two kinds of techniques are standardized in H.264: one is a technique using adaptive variable length coding called CAVLC (Context-Adaptive Variable Length Coding); and the other is a technique using adaptive binary system coding called CABAC (Context-Adaptive Binary Arithmetic Coding). The characteristics of CAVLC using Huffman coding, which has low compressibility and a small amount of computation, are that CAVLC is suitable for real-time processing but has a poor image quality. On the other hand, CABAC using binary arithmetic coding has high compressibility and a large amount of computation. Accordingly, the characteristics of CABAC are that CABAC is not suitable for the real-time operation although having a higher image quality than that in the case where CAVLC is used.
In order to perform the real-time operation by use of conventional binary arithmetic coding, it is necessary to use CAVLC having lower compressibility than CABAC, or to increase the quantization step size and reduce an image quality when CABAC is to be used.
Nonpatent Document 1: “Advanced video coding for generic audiovisual services”, ITU-T, May, 2003, JT-H264